package org.wyf.EveryPoint.system.service;

import com.baomidou.mybatisplus.extension.service.IService;
import org.springframework.transaction.annotation.Transactional;
import org.wyf.EveryPoint.system.entity.Config;
import org.wyf.EveryPoint.system.entity.Dept;

import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;

public interface IConfigService extends IService<Config> {
//
//    /**
//     * 查询翻页数据
//     * @param params 参数
//     * @return Page
//     */
//    public List<Config> listpage(Map<String, Object> params) {
//        return Finder.selectFrom(Config.class).where("1=1")
//                .optAnd("pkey like %:pkey%").optAnd("pvalue like %:pvalue%")
//                .optAnd("isSystem = :isSystem").order("pkey").bind(params).list();
//    }
//
//    /**
//     * 获取参数值
//     * @param key
//     * @return
//     */
//    public String getValueByKey(String key){
//        String value = Finder.selectFrom(Conf.class, "PVALUE")
//                .where("PKEY = ?").params(key).first(String.class);
//        return value==null?"":value;
//    }
//
//    @SuppressWarnings({ "unchecked", "rawtypes" })
//    public Map<String, String> getValueByKeyPrefix(String keyPrefix){
//        List<Map> list = Finder.selectFrom(Conf.class, "PKEY, PVALUE")
//                .where("PKEY like :keyPrefix").bind("keyPrefix", keyPrefix+"%")
//                .list(Map.class);
//
//        Map<String, String> map = new HashMap<>();
//        for (Map<String, String> m : list){
//            map.put(m.get("PKEY"), m.get("PVALUE"));
//        }
//
//        return map;
//    }
//
//    /**
//     * 批量删除
//     * @param ids
//     */
//    @Transactional
//    public void deleteByIds(String ids) {
//        String[] idArr = ids.split(",");
//        for(String id : idArr){
//            Finder.deleteById(Conf.class,id);
//        }
//    }
//
//
//    /**
//     * 用户参数修改
//     * @param keyValueMap
//     */
//    @Transactional
//    public void updateUserConf(Map<String, Object> keyValueMap) {
//        Set<Map.Entry<String, Object>> entrySet = keyValueMap.entrySet();
//        for(Map.Entry<String, Object> entry : entrySet){
//            Finder.updateSet(Conf.class, "pvalue=?").where("isSystem=0 and pkey=?")
//                    .params(entry.getValue(), entry.getKey()).execute();
//        }
//    }
}
